import { Toolkit } from "../../../Framework/scripts/Toolkit";


export default class UploadHelper {



    //打开上传框
    public static show(context: { uploadCallback: ( config:any ) => void }) {

        function preventDe(e) {
            e.preventDefault();
        }

        function dropHandle(e) {
            e.preventDefault();
            var file = e.dataTransfer.files[0];
            //file.type; 文件类型
            //file.name;文件名
            //file.size; 文件大小 btye
            if (!file.name.endsWith('json')) {
                alert("请上传 json文件");
                return;
            }

            const reader = new FileReader();
            reader.readAsText(file);
            reader.onload = function (t) {
                var config = JSON.parse(this.result.toString());
                context.uploadCallback(config);
            }

            //var img = document.getElementsByTagName("img")[0];
            // var dataURL = URL.createObjectURL(file);
            // console.log(dataURL);
            // console.log(file);
            // //img.src = dataURL;

            // var formData = new FormData();
            // formData.append("file", file);


            // let xhr = new XMLHttpRequest();
            // xhr.open(
            //     'POST',
            //     "/upload/file",
            //     true
            // );
            // xhr.setRequestHeader("Content-type", "application/octet-stream"); //流类型
            // xhr.setRequestHeader("Content-length", file.size);     //文件大小
            // xhr.setRequestHeader("uploadfile_name", encodeURI(file.name)); //兼容中文
            // xhr.send(formData);


            // ajax({
            //     type: "post",
            //     url: "updateFile",
            //     data: formData,
            //     dataType: "json"
            //     processData: false,//数据不做处理
            //     contentType: false,//不要设置content-Type请求头
            //     cache: false,//上传文件无需缓存
            //     success: function (data) {
            //         console.log(data);
            //     }

            // })



            document.removeEventListener("drop", preventDe);
            document.removeEventListener("dragleave", preventDe);
            document.removeEventListener("dragover", preventDe);
            document.removeEventListener("dragenter", preventDe);
            document.removeEventListener("drop", dropHandle);
        }
        document.addEventListener("drop", preventDe);
        document.addEventListener("dragleave", preventDe);
        document.addEventListener("dragover", preventDe);
        document.addEventListener("dragenter", preventDe);
        document.addEventListener("drop", dropHandle);
    }
}
